package com.pro.pojo;


import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;


public class JsComment {

  private long id;
  private long userId;//用户id
  private String userName;//用户名称
  private String trueName;//用户名
  private String roleName;//角色名称
  private String avatarUrl;//用户头像url
  private String acatarUrl;//用户头像url
  private long commodityId;//商品或视频或微圈名称
  private String productName;//商品或/视频/微圈名称
  private long type;//评论类型，2为视频，3为商品，4为微圈
  private Integer commentSum;//评论总数
  private Integer commentPeopleSum;//评论总人数
  private Integer commentTodaySum;//今日评论总数
  private Integer commentTodayPeopleSum;//今日评论总人数
  private String content;//评论内容
  private long parentId;//父级评论
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  private Date commentDate;//评论时间
  private long display;//是否显示默认2，2显示，3不显示
  private long fabulous;//点赞数量
  private long reply;//回复数量
  private String status;//评论状态，1为正常，2为已拦截，3为已删除
  private String userType;//用户类型，1为前台，2为后台
  private Integer all;//评论总数
  private Integer normal;//正常评论数
  private Integer intercept;//拦截评论数
  private Integer remove;//删除评论数
  private String createId;//创建人
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  private Date createDate;//创建时间
  private String updateId;//更新人
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  private Date updateDate;//更新时间
  private List<JsComment> children;//子级评论

  public JsComment() {
  }

  public JsComment(long userId, long commodityId, long type, String content, long parentId, Date commentDate, long display, String status, String userType, String createId, Date createDate) {
    this.userId = userId;
    this.commodityId = commodityId;
    this.type = type;
    this.content = content;
    this.parentId = parentId;
    this.commentDate = commentDate;
    this.display = display;
    this.status = status;
    this.userType = userType;
    this.createId = createId;
    this.createDate = createDate;
  }

  public JsComment(long id, long userId, String userName, String trueName, String roleName, String avatarUrl, String acatarUrl, long commodityId, String productName, long type, Integer commentSum, Integer commentPeopleSum, Integer commentTodaySum, Integer commentTodayPeopleSum, String content, long parentId, Date commentDate, long display, long fabulous, long reply, String status, String userType, Integer all, Integer normal, Integer intercept, Integer remove, String createId, Date createDate, String updateId, Date updateDate, List<JsComment> children) {
    this.id = id;
    this.userId = userId;
    this.userName = userName;
    this.trueName = trueName;
    this.roleName = roleName;
    this.avatarUrl = avatarUrl;
    this.acatarUrl = acatarUrl;
    this.commodityId = commodityId;
    this.productName = productName;
    this.type = type;
    this.commentSum = commentSum;
    this.commentPeopleSum = commentPeopleSum;
    this.commentTodaySum = commentTodaySum;
    this.commentTodayPeopleSum = commentTodayPeopleSum;
    this.content = content;
    this.parentId = parentId;
    this.commentDate = commentDate;
    this.display = display;
    this.fabulous = fabulous;
    this.reply = reply;
    this.status = status;
    this.userType = userType;
    this.all = all;
    this.normal = normal;
    this.intercept = intercept;
    this.remove = remove;
    this.createId = createId;
    this.createDate = createDate;
    this.updateId = updateId;
    this.updateDate = updateDate;
    this.children = children;
  }

  public List<JsComment> getChildren() {
    return children;
  }

  public void setChildren(List<JsComment> children) {
    this.children = children;
  }

  public String getAvatarUrl() {
    return avatarUrl;
  }

  public void setAvatarUrl(String avatarUrl) {
    this.avatarUrl = avatarUrl;
  }

  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }

  public String getStatus() {
    return status;
  }

  public void setStatus(String status) {
    this.status = status;
  }

  public String getUserType() {
    return userType;
  }

  public void setUserType(String userType) {
    this.userType = userType;
  }

  public Integer getAll() {
    return all;
  }

  public void setAll(Integer all) {
    this.all = all;
  }

  public Integer getNormal() {
    return normal;
  }

  public void setNormal(Integer normal) {
    this.normal = normal;
  }

  public Integer getIntercept() {
    return intercept;
  }

  public void setIntercept(Integer intercept) {
    this.intercept = intercept;
  }

  public Integer getRemove() {
    return remove;
  }

  public void setRemove(Integer remove) {
    this.remove = remove;
  }

  public long getUserId() {
    return userId;
  }

  public void setUserId(long userId) {
    this.userId = userId;
  }

  public Integer getCommentSum() {
    return commentSum;
  }

  public void setCommentSum(Integer commentSum) {
    this.commentSum = commentSum;
  }

  public Integer getCommentPeopleSum() {
    return commentPeopleSum;
  }

  public void setCommentPeopleSum(Integer commentPeopleSum) {
    this.commentPeopleSum = commentPeopleSum;
  }

  public Integer getCommentTodaySum() {
    return commentTodaySum;
  }

  public void setCommentTodaySum(Integer commentTodaySum) {
    this.commentTodaySum = commentTodaySum;
  }

  public Integer getCommentTodayPeopleSum() {
    return commentTodayPeopleSum;
  }

  public void setCommentTodayPeopleSum(Integer commentTodayPeopleSum) {
    this.commentTodayPeopleSum = commentTodayPeopleSum;
  }

  public long getCommodityId() {
    return commodityId;
  }

  public void setCommodityId(long commodityId) {
    this.commodityId = commodityId;
  }


  public long getType() {
    return type;
  }

  public void setType(long type) {
    this.type = type;
  }


  public String getContent() {
    return content;
  }

  public void setContent(String content) {
    this.content = content;
  }


  public long getParentId() {
    return parentId;
  }

  public void setParentId(long parentId) {
    this.parentId = parentId;
  }


  public Date getCommentDate() {
    return commentDate;
  }

  public void setCommentDate(Date commentDate) {
    this.commentDate = commentDate;
  }


  public long getDisplay() {
    return display;
  }

  public void setDisplay(long display) {
    this.display = display;
  }


  public long getFabulous() {
    return fabulous;
  }

  public void setFabulous(long fabulous) {
    this.fabulous = fabulous;
  }


  public long getReply() {
    return reply;
  }

  public void setReply(long reply) {
    this.reply = reply;
  }


  public String getCreateId() {
    return createId;
  }

  public void setCreateId(String createId) {
    this.createId = createId;
  }


  public Date getCreateDate() {
    return createDate;
  }

  public void setCreateDate(Date createDate) {
    this.createDate = createDate;
  }


  public String getUpdateId() {
    return updateId;
  }

  public void setUpdateId(String updateId) {
    this.updateId = updateId;
  }


  public Date getUpdateDate() {
    return updateDate;
  }

  public void setUpdateDate(Date updateDate) {
    this.updateDate = updateDate;
  }

  public String getUserName() {
    return userName;
  }

  public void setUserName(String userName) {
    this.userName = userName;
  }

  public String getRoleName() {
    return roleName;
  }

  public void setRoleName(String roleName) {
    this.roleName = roleName;
  }

  public String getProductName() {
    return productName;
  }

  public void setProductName(String productName) {
    this.productName = productName;
  }

  public String getTrueName() {
    return trueName;
  }

  public void setTrueName(String trueName) {
    this.trueName = trueName;
  }

  public String getAcatarUrl() {
    return acatarUrl;
  }

  public void setAcatarUrl(String acatarUrl) {
    this.acatarUrl = acatarUrl;
  }

  @Override
  public String toString() {
    return "JsComment{" +
            "id=" + id +
            ", userId=" + userId +
            ", userName='" + userName + '\'' +
            ", trueName='" + trueName + '\'' +
            ", roleName='" + roleName + '\'' +
            ", avatarUrl='" + avatarUrl + '\'' +
            ", acatarUrl='" + acatarUrl + '\'' +
            ", commodityId=" + commodityId +
            ", productName='" + productName + '\'' +
            ", type=" + type +
            ", commentSum=" + commentSum +
            ", commentPeopleSum=" + commentPeopleSum +
            ", commentTodaySum=" + commentTodaySum +
            ", commentTodayPeopleSum=" + commentTodayPeopleSum +
            ", content='" + content + '\'' +
            ", parentId=" + parentId +
            ", commentDate=" + commentDate +
            ", display=" + display +
            ", fabulous=" + fabulous +
            ", reply=" + reply +
            ", status='" + status + '\'' +
            ", userType='" + userType + '\'' +
            ", all=" + all +
            ", normal=" + normal +
            ", intercept=" + intercept +
            ", remove=" + remove +
            ", createId='" + createId + '\'' +
            ", createDate=" + createDate +
            ", updateId='" + updateId + '\'' +
            ", updateDate=" + updateDate +
            ", children=" + children +
            '}';
  }
}
